Algebraic Hierarchical Decomposition of Finite State Automata: Comparison of Implementations for Krohn-Rhodes Theory
نویسندگان
چکیده
The hierarchical algebraic decomposition of finite state automata (Krohn-Rhodes Theory) has been a mathematical theory without any computational implementations until the present paper, although several possible and promising practical applications, such as automated object-oriented programming in software development [5], formal methods for understanding in artificial intelligence [6], and a widely applicable integer-valued complexity measure [8, 7], have been described. As a remedy for the situation, our new implementation, described here, is freely available [2] as open-source software. We also present two different computer algebraic implementations of the Krohn-Rhodes decomposition, the V ∪ T and holonomy decompositions [4, 3], and compare their efficiency in terms of the number of hierarchical levels in the resulting cascade decompositions. The difficulties of computational implementations of the Krohn-Rhodes decomposition come from the fact that mathematical proofs do not consider computational feasibility, i.e. the space and time complexity of the required calculations. This problem is especially acute in semigroup theory, where semigroups have so many elements. We represent a semigroup by a set of generators (the transformations induced by the input symbols of the automaton) instead of by a Cayley-table, finite presentation, or explicit enumeration of all elements; transformations are represented as mappings on the set n = {1, . . . , n}. This internal representation is still human-readable as well since it coincides with the mathematical notation. Transformations are stored as 1-dimensional arrays. The content of the cell with index i is the image of i. This way the multiplication of transformations can be done in time linear in n, the number of states. As usual, for getting fast set operations, subsets are represented as bitvectors encoding characteristic functions. For deciding whether element is contained in a set or not, hashtables are used. Two different decompositions have been implemented in this work. The V ∪T technique and the holonomy decomposition were chosen since they are inherently different, representing distinct classes of algorithms, and their proofs are close to an algorithmic description. The V ∪ T method is one of the earliest proof techniques [4]. It works with semigroups and uses the right regular representation for the resulting cascaded components. The main idea of the algorithm is that we iteratively decompose the semigroup into two possibly overlapping subsemigroups (a left-ideal and a proper subsemigroup). The iteration ends when the
منابع مشابه
Algebraic hierarchical decomposition of finite state automata : a computational approach
The theory of algebraic hierarchical decomposition of finite state automata is an important and well developed branch of theoretical computer science (Krohn-Rhodes Theory). Beyond this it gives a general model for some important aspects of our cognitive capabilities and also provides possible means for constructing artificial cognitive systems: a Krohn-Rhodes decomposition may serve as a formal...
متن کاملAn Effective Lower Bound for Group Complexity of Finite Semigroups and Automata
The question of computing the group complexity of finite semigroups and automata was first posed in K. Krohn and J. Rhodes, Complexity of finite semigroups, Annals of Mathematics (2) 88 (1968), 128–160, motivated by the Prime Decomposition Theorem of K. Krohn and J. Rhodes, Algebraic theory of machines, I: Prime decomposition theorem for finite semigroups and machines, Transactions of the Ameri...
متن کاملOn Cascade Products of Answer Set Programs
Describing complex objects by elementary ones is a common strategy in mathematics and science in general. In their seminal 1965 paper, Kenneth Krohn and John Rhodes showed that every finite deterministic automaton can be represented (or “emulated”) by a cascade product of very simple automata. This led to an elegant algebraic theory of automata based on finite semigroups (Krohn-Rhodes Theory). ...
متن کاملPrimitive Recursive Presentations of Automata and their Products
Methods for specifying Moore type state machines (transducers) abstractly via primitive recursive string functions are discussed. The method is mostly of interest as a concise and convenient way of working with the complex state systems found in computer programming and engineering, but a short section indicates connections to algebraic automata theory and the theorem of Krohn and Rhodes. The t...
متن کاملPrimitive Recursion and State Machines
Methods for specifying Moore type state machines (transducers) abstractly via primitive recursive functions and for definining parallel composition via simultaneous primitive recursion are discussed. The method is mostly of interest as a concise and convenient way of working with the complex state systems found in computer programming and engineering, but a short section indicates connections t...
متن کامل